package com.poi;

import java.util.HashMap;
import java.util.Map;

public class WordUtil {

	/**
	 * 
	 * @param inFilePath
	 *            一个包含书签的word文件
	 * @param outFilePath
	 *            一个空的word文件
	 * @param bookMarkValue
	 *            书签对应值
	 * @param wordType
	 *            word类型，传递doc/docx，区分大小写，此处写小写
	 */
	public void convertWordBookMark(String inFilePath, String outFilePath,
			Map<String, String> bookMarkValue, String wordType) {
		if ("doc".equals(wordType.toLowerCase())) {
			// word2003
			MSWordDocTool.convertBookMarksAndSaveDocFile(inFilePath,
					outFilePath, bookMarkValue);
		}
		if ("docx".equals(wordType.toLowerCase())) {
			MSWordDocxTool changer = new MSWordDocxTool();
			changer.setTemplate(inFilePath);
			changer.replaceBookMark(bookMarkValue);
			changer.saveAs(outFilePath);
		}
	}

	public static void main(String[] args) {
		WordUtil util = new WordUtil();
		String inFilePath = "E:\\base\\model2.docx";
		String outFilePath = "E:\\base\\replace11.docx";
		String wordType = "docx";
		Map<String, String> bookMarkValue = new HashMap<String, String>();
		bookMarkValue.put("AAA", "山东省青岛市");
		bookMarkValue
				.put("WHBKGWCONTENT",
						"山东省山东省山东省山东省山东省山东省山东省山东省山东省山东省山东省山东省山东省山东省山东省山东省山东省山东省山东省山东省山东省山东省山东省山东省山东省山东省山东省山东省山东省山东省山东省山东省山东省山东省山东省山东省山东省山东省山东省山东省山东省山东省山东省山东省山东省山东省山东省山东省山东省山东省山东省");
		util.convertWordBookMark(inFilePath, outFilePath, bookMarkValue,
				wordType);
	}
}
